﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAL
{
   public partial  class Moneda
    {
       /// <summary>
       /// el tipo de cambio segun la moneda base.Si cargo moneda dolares, entonces 
       /// se carga el tipo de cambio P.E. 3.5 de la moneda base
       /// </summary>
       /// <param name="_db"></param>
       /// <param name="fecha"></param>
       /// <returns></returns>
       public decimal getTipoCambio(dbGestionDataContext _db, DateTime fecha)
       {
           decimal tipoCambioFecha;
           DateTime fechadb = new DateTime(fecha.Year, fecha.Month, fecha.Day);
           if (this.idInternal == 3)
           {
               // soles
               tipoCambioFecha = 1;
           }
           else
           {
               var q = from a in _db.TipoCambios
                       where a.idMonedaBase == 3 & a.idMonedaCambio == this.idInternal &
                       a.fecha == fechadb
                       select a;
               if (q.Count() == 0)
               {
                   throw new Exception("No existe tipo de cambio, Verifique fecha:" + fecha);
               }
               tipoCambioFecha = q.First().monto.Value;
           }

           return tipoCambioFecha;
           
       }
    }
}
